#include "BuscarPersonaCommand.h"

BuscarPersonaCommand::BuscarPersonaCommand() {

}

BuscarPersonaCommand::~BuscarPersonaCommand() {

}

void BuscarPersonaCommand::Execute(){
	string input;
	cout << "Ingrese el valor de comparacion: ";
	getline(cin, input);
	this->setValorBusqueda(input);
	if(this->parametrosSeteados()){
		try{
			const list<Persona> * listado = Cliente::getInstance()->realizarBusqueda((criterio_busqueda)criterioBusqueda, (tipo_condicion) criterioComparacion, valorBusqueda);
			list<Persona>::const_iterator it = listado->begin();
			cout << "NOMBRE\t\t" << "DIRECCION\t\t" << "TELEFONO" << endl;
			for(; it != listado->end(); it++){
				cout << it->getNombre() << "\t\t";
				cout << it->getDireccion() << "\t\t";
				cout << it->getTelefono() << endl;
			}
		}catch(ValorInvalidoException & e){
			cout << "Valor Invalido: " << e.what() << endl;
		}
		cout << "<Enter> para salir";
		string str;
		getline(cin, str);
		this->valorBusqueda.clear();
	}

}
